<template>
    <div class="model-form">
        <el-page-header @back="goBack" content="增加商家素材">
        </el-page-header>
        <div class="model-content">
            <el-form ref="ruleForm" :rules="rules" :model="form" label-width="160px">
                <el-row :gutter="10">
                    <el-col :span="12">
                        <el-form-item label="素材分类" size="mini" prop="catalog">
                            <el-select style="width: 100%;" v-model="form.catalog" filterable clearable
                                       placeholder="请选择">
                                <el-option v-for="item in catalogOptions" :key="item.id"
                                           :label="item.name" :value="item.id">
                                </el-option>
                            </el-select>
                        </el-form-item>

                    </el-col>
                    <el-col :span="12">
                        <el-form-item label="上传人" size="mini" prop="creator">
                            <el-input v-model="form.creator" name="creator">
                            </el-input>
                        </el-form-item>

                    </el-col>
                    <el-col :span="12">
                        <el-form-item label="商家" size="mini" prop="shop">
                            <el-select style="width: 100%;" v-model="form.shop" filterable clearable
                                       placeholder="请选择">
                                <el-option v-for="item in shopOptions" :key="item.id"
                                           :label="item.name" :value="item.id">
                                </el-option>
                            </el-select>
                        </el-form-item>

                    </el-col>

                    <el-col :span="22">
                        <el-form-item>
                            <el-button @click="goBack">取消</el-button>
                            <el-button type="primary" @click="add">确定</el-button>
                        </el-form-item>
                    </el-col>
                </el-row>
            </el-form>
        </div>
    </div>
</template>

<script>
import common from "@/mixins/common.js";


export default {
    name: "shopmaterial_add",
    mixins: [common],
    components: {},
    data() {
        return {
            form: {
                catalog: '',
                creator: '',
                shop: ''
            },
            catalogOptions: [],
            shopOptions: [],
            rules: {}
        }
    },
    methods: {
        async add() {
            try {
                let valid = await this.$refs["ruleForm"].validate();
                if (!valid) {
                    return;
                }
            } catch (e) {
                return;
            }

            await this.addData();
        },
        async addData() {
            let data = this.form;
            let res = await this.$http.form("/tenantRest/shopmaterial/create.htm", data);
            if (res.code !== 0) {
                this.$message.error(res.msg);
            }

            this.$message({
                message: '添加数据成功',
                type: 'success'
            });
            this.$router.go(-1);
        },
        async loadCatalogOptions() {
            let self = this;
            let param = {};
            param.sortMethod = "asc";
            param.sortField = "id";
            param.level = 1;
            param.size = 500;
            param.fetch = 0;
            let res = await this.$http.form("/tenantRest/catalog/list.htm", param);
            if (res.code === 0) {
                self.catalogOptions = res.list;
            }
        },
        async loadShopOptions() {
            let self = this;
            let param = {};
            param.sortMethod = "asc";
            param.sortField = "id";
            param.level = 1;
            param.size = 500;
            param.fetch = 0;
            let res = await this.$http.form("/tenantRest/shop/list.htm", param);
            if (res.code === 0) {
                self.shopOptions = res.list;
            }
        },

    },
    mounted() {
        this.loadCatalogOptions();
        this.loadShopOptions();
    }
}

</script>

<style scoped>
</style>
